# Contributor: Bart Ribbers <bribbers@disroot.org>
# Maintainer: team/kde <bribbers@disroot.org>

# The group tag is just to easily find this APKBUILD by some scripts for automation
# group=kde-applications
pkgname=libkgapi
pkgver=24.02.2
pkgrel=0
pkgdesc="LibKGAPI is a KDE-based library for accessing various Google services via their public API"
# armhf blocked by extra-cmake-modules
# ppc64le, s390x, riscv64 and armv7 blocked by qt6-qtwebengine
arch="all !armhf !ppc64le !s390x !riscv64 !armv7"
url="https://community.kde.org/KDE_PIM"
license="LGPL-2.1-only OR LGPL-3.0-only"
depends_dev="
	cyrus-sasl-dev
	kcalendarcore-dev
	kcontacts-dev
	kio-dev
	kwallet-dev
	kwindowsystem-dev
	qt6-qtbase-dev
	qt6-qtwebengine-dev
	"
makedepends="$depends_dev
	extra-cmake-modules
	qt6-qttools-dev
	samurai
	"
checkdepends="xvfb-run"
subpackages="$pkgname-dev $pkgname-lang"
_repo_url="https://invent.kde.org/pim/libkgapi.git"
source="https://download.kde.org/stable/release-service/$pkgver/src/libkgapi-$pkgver.tar.xz"

build() {
	cmake -B build -G Ninja \
		-DCMAKE_BUILD_TYPE=RelWithDebInfo \
		-DCMAKE_INSTALL_PREFIX=/usr \
		-DCMAKE_INSTALL_LIBDIR=lib
	cmake --build build
}

check() {
	# calendar-freebusyqueryjobtest, contacts-contactfetchjobtest,
	# contacts-contactcreatejobtest and contacts-contactmodifyjobtest are broken
	# tasks-taskfetchjobtest fails on the builders
	# contacts-contactfetchjobtest: https://gitlab.alpinelinux.org/alpine/aports/-/issues/11787
	# calendar-event-*: UTC+02 != UTC+02:00
	local skipped_tests="("
	local tests="
		tasks-taskfetchjob
		calendar-freebusyqueryjob
		contacts-contactfetchjob
		contacts-contactcreatejob
		contacts-contactmodifyjob
		calendar-eventcreatejob
		calendar-eventmodifyjob
		calendar-eventfetchjob
		"
	case "$CARCH" in
		x86) tests="$tests
			calendar-calendardeletejob
			calendar-eventdeletejob
			" ;;
	esac
	for test in $tests; do
		skipped_tests="$skipped_tests|$test"
	done
	skipped_tests="$skipped_tests)test"
	xvfb-run ctest --test-dir build --output-on-failure -E "$skipped_tests"
}

package() {
	DESTDIR="$pkgdir" cmake --install build
}

sha512sums="
6c50b109414b7f31bd4c051bda94440416114320fcd2f3f4cfd9bf2255ce31ed328fd986d1c21cd481e9f4e7dd63b13c5a1bced80c7f7b45972a8ab8f46ad783  libkgapi-24.02.2.tar.xz
"
